// eslint-disable-next-line @typescript-eslint/no-var-requires
const Path = require('path')
// 转发地址
const targetUrl = process.env.VUE_APP_PROXY_URL
// 是否是开发者模式
const DEV = process.env.NODE_ENV === 'development'

const outputDir = Path.resolve (__dirname, process.env.OUTPUT_DIR)

module.exports = {
  publicPath: process.env.BASE_URL,
  outputDir,
  pages: {
    admin: {
      // page 的入口
      entry: 'src/project/admin/main.ts',
      // 模板来源
      template: 'public/admin.html',
      // 在 dist/index.html 的输出
      filename: Path.resolve (__dirname, process.env.HTML_FILE_PATH + 'admin.html'),
      // 当使用 title 选项时，
      // template 中的 title 标签需要是 <title><%= htmlWebpackPlugin.options.title %></title>
      title: '账号管理系统',
      // viewport
      // 在这个页面中包含的块，默认情况下会包含
      // 提取出来的通用 chunk 和 vendor chunk。
      chunks: ['chunk-vendors', 'chunk-common', 'admin']
    },
    index: {
      entry: 'src/project/index/main.ts',
      template: 'public/index.html',
      filename: Path.resolve (__dirname, process.env.HTML_FILE_PATH + 'index.html'),
      title: '后端管理系统',
      chunks: ['chunk-vendors', 'chunk-common', 'index']
    }
  },
  devServer: {
    proxy: {
      '/wang-admin-api': {
        target: targetUrl,
        ws: false,
        changeOrigin: true,
      },
    }
  },
  lintOnSave: DEV,
  productionSourceMap: false,
  css: {
    sourceMap: false
  }
}
